<html>
<head><meta charset="utf-8"><title>outlives goal chalk#451 · wg-traits · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/index.html">wg-traits</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html">outlives goal chalk#451</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="199193779"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199193779" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199193779">(May 29 2020 at 18:33)</a>:</h4>
<p><span class="user-mention" data-user-id="232957">@Jack Huey</span> so I'm reading over <a href="https://github.com/rust-lang-nursery/chalk/issues/451">chalk#451</a>...</p>



<a name="199193936"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199193936" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199193936">(May 29 2020 at 18:34)</a>:</h4>
<p>actually can you rebase so that CI works?</p>



<a name="199194015"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199194015" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199194015">(May 29 2020 at 18:35)</a>:</h4>
<p>yeah, give me 2 minutes</p>



<a name="199194443"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199194443" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199194443">(May 29 2020 at 18:38)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> rebased</p>



<a name="199196353"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196353" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196353">(May 29 2020 at 18:53)</a>:</h4>
<p>left a comment, let me know if it makes any sense</p>



<a name="199196529"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196529" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196529">(May 29 2020 at 18:54)</a>:</h4>
<p>So, the <code>resolvent</code> comment</p>



<a name="199196544"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196544" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196544">(May 29 2020 at 18:55)</a>:</h4>
<p>Previously, I had code in the <code>resolvent_clause</code> function</p>



<a name="199196577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196577">(May 29 2020 at 18:55)</a>:</h4>
<p>to make sure we always avoid adding <code>LifetimeOutlives</code> goals to new strands</p>



<a name="199196587"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196587" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196587">(May 29 2020 at 18:55)</a>:</h4>
<p>but that turned out to not be needed</p>



<a name="199196703"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196703" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196703">(May 29 2020 at 18:56)</a>:</h4>
<p>So, as far as <code>AddRegionConstraint</code> though</p>



<a name="199196753"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196753" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196753">(May 29 2020 at 18:56)</a>:</h4>
<p>It really would only make sense to add if I added back <code>HhGoal</code></p>



<a name="199196792"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196792" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196792">(May 29 2020 at 18:57)</a>:</h4>
<p>otherwise it would be visible to the rest of <code>chalk-ir</code></p>



<a name="199196982"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199196982" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199196982">(May 29 2020 at 18:58)</a>:</h4>
<p>I would expect it to be visible</p>



<a name="199197030"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197030" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197030">(May 29 2020 at 18:58)</a>:</h4>
<p>but it's true that it's an impl detail bubbling up a bit</p>



<a name="199197120"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197120" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197120">(May 29 2020 at 18:59)</a>:</h4>
<p>so maybe better to violate the "domain goals are abstract" rule instead</p>



<a name="199197133"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197133" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197133">(May 29 2020 at 18:59)</a>:</h4>
<p>or alternatively</p>



<a name="199197145"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197145" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197145">(May 29 2020 at 18:59)</a>:</h4>
<p>to give the <code>push_program_clauses</code> logic a more complex setup</p>



<a name="199197180"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197180" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197180">(May 29 2020 at 19:00)</a>:</h4>
<p>(that would keep the logic that chalk-solve interprets domain-goals, not the engines)</p>



<a name="199197240"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197240" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197240">(May 29 2020 at 19:00)</a>:</h4>
<p>which I think is a useful line to draw</p>



<a name="199197413"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197413" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197413">(May 29 2020 at 19:01)</a>:</h4>
<p>though at the cost of making the chalk-solve interface more complex</p>



<a name="199197421"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197421" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197421">(May 29 2020 at 19:01)</a>:</h4>
<p>seems ok to leave it how it is for now</p>



<a name="199197446"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197446" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197446">(May 29 2020 at 19:01)</a>:</h4>
<p>even though I have my hesitations ;)</p>



<a name="199197450"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197450" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197450">(May 29 2020 at 19:01)</a>:</h4>
<p>It would be interesting to think about <em>keeping</em> <code>LifetimeOutlives</code> goals instead of having a separate constraints</p>



<a name="199197525"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197525" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197525">(May 29 2020 at 19:02)</a>:</h4>
<p>well, either way it violates my rule</p>



<a name="199197535"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197535" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197535">(May 29 2020 at 19:02)</a>:</h4>
<p>and having them delayed</p>



<a name="199197539"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197539" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197539">(May 29 2020 at 19:02)</a>:</h4>
<p>but yes there <em>is</em> something there</p>



<a name="199197558"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197558" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197558">(May 29 2020 at 19:02)</a>:</h4>
<p>in that I've also pondered that we may want to "Delay" other sorts of goals</p>



<a name="199197564"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197564" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197564">(May 29 2020 at 19:02)</a>:</h4>
<p>most notably <code>T: Sized</code></p>



<a name="199197607"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197607" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197607">(May 29 2020 at 19:02)</a>:</h4>
<p>for practical reasons</p>



<a name="199197624"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197624" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197624">(May 29 2020 at 19:03)</a>:</h4>
<p>(but also maybe <code>T: Send</code> and some auto-trait related goals)</p>



<a name="199197660"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197660" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197660">(May 29 2020 at 19:03)</a>:</h4>
<p>so e.g. part of chalk-solve could be that it has a "delay" option</p>



<a name="199197670"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197670" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197670">(May 29 2020 at 19:03)</a>:</h4>
<p>sort of similar to flounder but different</p>



<a name="199197767"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197767" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197767">(May 29 2020 at 19:04)</a>:</h4>
<p>I think we should not block this PR on resolving this long-term question</p>



<a name="199197771"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197771" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197771">(May 29 2020 at 19:04)</a>:</h4>
<p>Okay</p>



<a name="199197773"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197773" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197773">(May 29 2020 at 19:04)</a>:</h4>
<p>seems like a good FIXME issue</p>



<a name="199197792"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197792" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197792">(May 29 2020 at 19:04)</a>:</h4>
<p>Should I go ahead and add support in the recursive solver?</p>



<a name="199197814"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197814" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197814">(May 29 2020 at 19:04)</a>:</h4>
<p>seems good</p>



<a name="199197822"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197822" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197822">(May 29 2020 at 19:04)</a>:</h4>
<p>I wonder how hard it would be to extract a single "simplify" fn</p>



<a name="199197835"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197835" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197835">(May 29 2020 at 19:05)</a>:</h4>
<p>I'd feel better about not duplicating that logic</p>



<a name="199197896"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197896" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197896">(May 29 2020 at 19:05)</a>:</h4>
<p>might be possible</p>



<a name="199197904"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197904" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197904">(May 29 2020 at 19:06)</a>:</h4>
<p>I don't really know where it would live though</p>



<a name="199197948"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197948" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197948">(May 29 2020 at 19:06)</a>:</h4>
<p>chalk-ir?</p>



<a name="199197958"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199197958" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199197958">(May 29 2020 at 19:06)</a>:</h4>
<p>why not chalk-engine?</p>



<a name="199198020"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198020" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198020">(May 29 2020 at 19:06)</a>:</h4>
<p>We don't build chalk-engine if we only use the <code>recursive-solver</code> feature</p>



<a name="199198021"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198021" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198021">(May 29 2020 at 19:06)</a>:</h4>
<p>(side note that I'd like to make the recursive and slg solvers live side-by-side, whereever that is)</p>



<a name="199198038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198038">(May 29 2020 at 19:06)</a>:</h4>
<p>oh</p>



<a name="199198067"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198067" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198067">(May 29 2020 at 19:07)</a>:</h4>
<p>well..that's annoying :)</p>



<a name="199198074"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198074" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198074">(May 29 2020 at 19:07)</a>:</h4>
<p>chalk-ir is plausible I suppose</p>



<a name="199198100"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198100" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198100">(May 29 2020 at 19:07)</a>:</h4>
<p>idk, maybe don't worry about it for now</p>



<a name="199198102"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198102" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198102">(May 29 2020 at 19:07)</a>:</h4>
<p>feels orthogonal</p>



<a name="199198139"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199198139" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199198139">(May 29 2020 at 19:07)</a>:</h4>
<p>and it's not that much code to copy</p>



<a name="199199587"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199199587" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199199587">(May 29 2020 at 19:19)</a>:</h4>
<p>Okay, updated for the recursive solver</p>



<a name="199199774"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199199774" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199199774">(May 29 2020 at 19:21)</a>:</h4>
<p>Thinking about it, I do wonder if the "right" way to approach this is to have chalk-solve do the simplification entirely</p>



<a name="199199974"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199199974" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199199974">(May 29 2020 at 19:22)</a>:</h4>
<p>But imo I think we should land this how it is</p>



<a name="199200854"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200854" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200854">(May 29 2020 at 19:30)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232957">Jack Huey</span> <a href="#narrow/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451/near/199199774">said</a>:</p>
<blockquote>
<p>Thinking about it, I do wonder if the "right" way to approach this is to have chalk-solve do the simplification entirely</p>
</blockquote>
<p>that doesn't seem right to me</p>



<a name="199200908"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200908" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200908">(May 29 2020 at 19:30)</a>:</h4>
<p>though it might be a fine place for the code to live</p>



<a name="199200920"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200920" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200920">(May 29 2020 at 19:30)</a>:</h4>
<p>the reason I say that though is:</p>



<a name="199200929"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200929" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200929">(May 29 2020 at 19:30)</a>:</h4>
<p>apart from <code>DomainGoal</code>, the rest of <code>Goal</code> is all "generic logic"</p>



<a name="199200941"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200941" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200941">(May 29 2020 at 19:30)</a>:</h4>
<p>e.g., and, or, etc</p>



<a name="199200946"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200946" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200946">(May 29 2020 at 19:30)</a>:</h4>
<p>and that's what the engine is responsible for</p>



<a name="199200961"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200961" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200961">(May 29 2020 at 19:30)</a>:</h4>
<p>the <em>domain goal</em> (as the name suggests) are things specific to our domain (rust)</p>



<a name="199200973"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200973" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200973">(May 29 2020 at 19:30)</a>:</h4>
<p>and chalk-solve is responsible for defining what those mean</p>



<a name="199200999"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199200999" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199200999">(May 29 2020 at 19:31)</a>:</h4>
<p>I think this argues that, indeed, it is correct that chalk-solve should somehow signal how to "delay" lifetime constraints</p>



<a name="199201005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199201005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199201005">(May 29 2020 at 19:31)</a>:</h4>
<p>as we were discussing</p>



<a name="199201042"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199201042" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199201042">(May 29 2020 at 19:31)</a>:</h4>
<p>I think though that's a useful distinction otherwise?</p>



<a name="199201052"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199201052" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199201052">(May 29 2020 at 19:31)</a>:</h4>
<p>Hmm, true</p>



<a name="199201571"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199201571" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199201571">(May 29 2020 at 19:35)</a>:</h4>
<p>I guess there's a few different options:</p>



<a name="199201750"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199201750" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199201750">(May 29 2020 at 19:37)</a>:</h4>
<p>1) Always leave it as-is now. I.e. the solvers just look to see if there is a <code>WhereClause::LifetimeOutlives</code> and if so, adds the constraints.</p>



<a name="199201971"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199201971" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199201971">(May 29 2020 at 19:39)</a>:</h4>
<p>2) We add a new <code>AddOutlivesConstraint</code> variant to <code>Goal</code>. Chalk-solve is responsible for adding a <code>forall&lt;'a, 'b&gt; LifetimeOutlives('a, 'b) :- AddOutlivesConstraint('a, 'b)</code>. And the solvers add constraints when they see <code>AddOutlivesConstraint</code></p>



<a name="199202047"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202047" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202047">(May 29 2020 at 19:39)</a>:</h4>
<p>3) Add a new <code>constraints</code> field to <code>ProgramClauseImplication</code> and have <code>chalk-solve</code> add constraints</p>



<a name="199202209"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202209" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202209">(May 29 2020 at 19:40)</a>:</h4>
<p>4) Delay the <code>LifetimeOutlives</code> constraints in some fashion</p>



<a name="199202806"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202806" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202806">(May 29 2020 at 19:46)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232957">Jack Huey</span> <a href="#narrow/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451/near/199202047">said</a>:</p>
<blockquote>
<p>3) Add a new <code>constraints</code> field to <code>ProgramClauseImplication</code> and have <code>chalk-solve</code> add constraints</p>
</blockquote>
<p>oh, that's.. interesting</p>



<a name="199202820"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202820" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202820">(May 29 2020 at 19:46)</a>:</h4>
<p>3 and 4 are related</p>



<a name="199202849"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202849" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202849">(May 29 2020 at 19:46)</a>:</h4>
<p>i.e., part of <code>ProgramClauseImplication</code> could be either a new "constraints" field or a new "delayed-goals" field</p>



<a name="199202853"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202853" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202853">(May 29 2020 at 19:46)</a>:</h4>
<p>kind of two sides of the same coin</p>



<a name="199202862"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202862" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202862">(May 29 2020 at 19:46)</a>:</h4>
<p>either way it's something that gets added and propagated back up</p>



<a name="199202866"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202866" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202866">(May 29 2020 at 19:46)</a>:</h4>
<p>I kind of like that</p>



<a name="199202965"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199202965" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199202965">(May 29 2020 at 19:47)</a>:</h4>
<p>Well, I think 4 is compatible with all the others</p>



<a name="199211755"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199211755" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199211755">(May 29 2020 at 21:03)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> so are you good with merging this as is now? (Then we can open an issue for a followup)</p>



<a name="199211790"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199211790" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199211790">(May 29 2020 at 21:04)</a>:</h4>
<p>yes I thiink so, I'll take a inal look</p>



<a name="199211832"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199211832" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199211832">(May 29 2020 at 21:04)</a>:</h4>
<p>Awesome</p>



<a name="199211875"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199211875" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199211875">(May 29 2020 at 21:04)</a>:</h4>
<p>merged</p>



<a name="199212089"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199212089" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199212089">(May 29 2020 at 21:06)</a>:</h4>
<p>Awesome</p>



<a name="199212110"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199212110" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199212110">(May 29 2020 at 21:06)</a>:</h4>
<p>I've also updated rustc for all the chalk changes up to that PR</p>



<a name="199212144"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/outlives%20goal%20chalk%23451/near/199212144" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/outlives.20goal.20chalk.23451.html#199212144">(May 29 2020 at 21:06)</a>:</h4>
<p>So next week I'll make a PR for that once new chalk version is out</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>